package com.oig.sys.minio.util;

import java.time.LocalDate;
import java.time.format.DateTimeFormatter;

public class ObjectNameUtil {

    /**minion文档目录分割符**/
    public static final String FILE_SPLIT_PATH = "/";
    /**
     * 时间格式化格式
     **/
    public static final DateTimeFormatter DATE_FORMATTER = DateTimeFormatter.ofPattern("yyyyMMdd");

    /**
     * 获得当前时间：年（格式：yyyy）
     */
    public static int getYear() {
        return LocalDate.now().getYear();
    }

    /**
     * 获得当前时间：月（格式：MM）
     */
    public static String getMonth() {
        int month = LocalDate.now().getMonth().getValue();
        if (month < 10) {
            return "0" + month;
        }
        return Integer.valueOf(month).toString();
    }

    /**
     * 获得当前时间：日（格式：dd）
     */
    public static String getDay() {
        int day = LocalDate.now().getDayOfMonth();
        if (day < 10) {
            return "0" + day;
        }
        return Integer.valueOf(day).toString();
    }

    /**
     * 获得当前时间（格式：yyyyMMdd）
     *
     */
    public static String getFullDay() {
        return LocalDate.now().format(DATE_FORMATTER);
    }

    /**
     * 获得当前时间月和日（格式：MMdd）
     */
    public static String getMonthAndDay() {
        return getMonth() + getDay();
    }


    /**
     * YYYY/MM/DD 格式目录
     */
    public static String dateDirYMD(){
        StringBuilder stringBuilder = new StringBuilder();
        stringBuilder.append(getYear()).append(FILE_SPLIT_PATH)
                .append(getMonth()).append(FILE_SPLIT_PATH)
                .append(getDay());
        return stringBuilder.toString();
    }

}
